#include "Camera.hpp"

Camera::Camera():
    _position(0, 0, 0),
    _lookedPoint(0, 0, 0),
    _orientation(0, 1, 0)
{
}

Camera::Camera(Vec3f const& position, Vec3f const& lookedPoint, Vec3f const& orientation):
    _position(position),
    _lookedPoint(lookedPoint),
    _orientation(orientation)
{
}


Camera::~Camera()
{
}


Vec3f const&    Camera::getPosition() const
{
    return _position;
}

void            Camera::setPosition(Vec3f const& position)
{
    _position = position;
}

void            Camera::setPosition(float x, float y, float z)
{
    _position.set(x, y, z);
}


Vec3f const&    Camera::getLookedPoint() const
{
    return _lookedPoint;
}

void            Camera::setLookedPoint(Vec3f const& lookedPoint)
{
    _lookedPoint = lookedPoint;
}

void            Camera::setLookedPoint(float x, float y, float z)
{
    _lookedPoint.set(x, y, z);
}

Vec3f const&    Camera::getOrientation() const
{
    return _orientation;
}

void            Camera::setOrientation(Vec3f const& orientation)
{
    _orientation = orientation;
}

void            Camera::setOrientation(float x, float y, float z)
{
    _orientation.set(x, y, z);
}
